package com.dormitoryAdministratorSystem.service.student;

import com.dormitoryAdministratorSystem.entity.page.PageBean;
import com.dormitoryAdministratorSystem.entity.student.StudentBean;

import java.util.List;
import java.util.Map;

public interface IStudentService {
    /**
     * 根据条件和分页来显示学生信息
     * @param con 查询条件
     * @return 返回分页对象，里面记录分页信息
     */
    PageBean<StudentBean> showStusInfo(Map<String,String> con);

    /**
     *  学生入住房间
     * @param stu 学生对象
     * @return 1表示成功，0 表示失败
     */
    int addStuInRoom(StudentBean stu);

    /**
     * 学生退房
     * @param sId 学生编号
     * @return 0 表示失败，1表示成功
     */
    int checkOutRoom(int sId);

    /**
     * 学生换房
     * @param stu  学生对象
     * @return 0表示失败，1表示成功
     */
    int changeRoom(StudentBean stu, int oldRid);

    /**
     * 根据学生id显示学生信息
     * @param sId 学生编号
     * @return 0表示失败，1表示成功
     */
    StudentBean showStuInfo(int sId);

    /**
     * 查询该班级下是否有学生
     * @param id 班级编号
     * @return true表示有，false表示没啊
     */
    boolean haveStudentsInClass(int id);

    /**
     * 查询该房间是否还有学生
     * @param rId 房间编号
     * @return 返回学生集合，若集合为空表示该房间没有学生
     */
    List<StudentBean> haveStudentsInRoom(int rId);
}
